// 动态回到顶部
var obtn = document.getElementById("btn");
window.onscroll = computedDisplay;

function computedDisplay() {
    var cw = document.documentElement.scrollTop || document.body.scrollTop;
    if (cw > 80) {
        obtn.style.display = "block";
    } else {
        obtn.style.display = "none"; //到一定距离才显示。
    }
}
//回到顶部进阶
//总时间，500ms。
//频率，10ms一步。
//总距离,当前到top(0)
//步长,每一次距离.总距离/总时间*频率.
obtn.onclick = function() {
    this.style.display = "none"
    window.onscroll = null;
    //让按钮隐藏,消除到一定距离显示按钮事件。
    var duration = 500,
        interval = 10; //总时间和频率
    var target = document.documentElement.scrollTop || document.body.scrollTop; //滑动总距离
    var step = (target / duration) * interval; //每次走的距离

    var timer = window.setInterval(function() {
        var curTop = document.documentElement.scrollTop || document.body.scrollTop;

        if (curTop === 0) {
            window.clearInterval(timer);
            window.onscroll = computedDisplay; //回到顶部的时候要开启事件。
            return;
        }
        curTop -= step;
        document.documentElement.scrollTop = document.body.scrollTop = curTop;
    }, interval)
}
